System and method for detecting and characterizing force inputs on a surface

ABSTRACT

One variation of a method for detecting and characterizing force inputs on a surface includes: during a resistance scan cycle of a sampling period, driving a shield electrode arranged over a resistive touch sensor to a reference potential and reading resistance values across sense electrode and drive electrode pairs in the resistive touch sensor; during a processing cycle of the sampling period, transforming the resistance values into a position and a magnitude of a force applied to a tactile surface over the shield electrode, releasing the shield electrode from the reference potential, reading a capacitance value of the shield electrode, and detecting proximity of an object to the tactile surface based on the capacitance value; and generating a touch image representing the position and the magnitude of the force on the tactile surface based on the proximity of the object to the tactile surface.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 17/491,258, filed on 30 Sep. 2021, which is acontinuation application of U.S. patent application Ser. No. 16/838,978,filed on 2 Apr. 2020, which is a continuation application of U.S. patentapplication Ser. No. 16/286,248, filed on 26 Feb. 2019, which is acontinuation application of U.S. patent application Ser. No. 16/112,548,filed on 24 Aug. 2018, which is a continuation application of U.S.patent application Ser. No. 15/470,669, filed on 27 Mar. 2017, whichclaims the benefit of U.S. Provisional Application No. 62/313,536, filedon 25 Mar. 2016, each of which is incorporated in its entirety by thisreference.

This application is related to U.S. patent application Ser. No.14/499,001, filed on 26 Sep. 2014, which is incorporated in its entiretyby this reference.

TECHNICAL FIELD

This invention relates generally to the field of touch sensors and morespecifically to a new and useful system and method of detecting andcharacterizing force inputs on a surface in the field of touch sensors.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is a schematic representation of a system;

FIG. 2 is a schematic representation of one variation of the system;

FIGS. 3A, 3B, and 3C are flowchart representations of variations of amethod;

FIG. 4 is a flowchart representation of one variation of the system andmethod;

FIGS. 5A and 5B are schematic representations of variations of thesystem;

FIGS. 6A and 6B are schematic representations of variations of thesystem;

FIGS. 7A and 7B are flowchart representations of one variation of themethod;

FIG. 8 is a flowchart representation of one variation of the method; and

FIGS. 9A, 9B, 9C, and 9D are schematic representations of variations ofthe system.

DESCRIPTION OF THE EMBODIMENTS

The following description of embodiments of the invention is notintended to limit the invention to these embodiments but rather toenable a person skilled in the art to make and use this invention.Variations, configurations, implementations, example implementations,and examples described herein are optional and are not exclusive to thevariations, configurations, implementations, example implementations,and examples they describe. The invention described herein can includeany and all permutations of these variations, configurations,implementations, example implementations, and examples.

1. System and Method

As shown in FIGS. 1 and 2 , a system 100 for detecting andcharacterizing force inputs on a surface includes: a substrate 110; aresistive touch sensor 120 arranged across the substrate 110 andcomprising an array of sense electrode and drive electrode pairs 121; aforce-sensing layer 130 arranged over the resistive touch sensor 120opposite the substrate 110 and comprising a force-sensitive material 131exhibiting variations in local bulk resistance responsive to localvariations in applied force; a first shield electrode 151 coupled to theforce-sensing layer 130, extending across a first region of theforce-sensing layer 130, and electrically coupled to the substrate no;and a controller 160 coupled to the substrate no. The controller 160 isconfigured to: drive the first shield electrode 151 to a virtualreference potential and to read resistance values across sense electrodeand drive electrode pairs 121 in the resistive touch sensor 120 during afirst resistance scan cycle in a first sampling period; and to releasethe first shield electrode 151 from the virtual reference potential andto transform resistance values read from sense electrode and driveelectrode pairs 121 in the force-sensing layer 130 into a force touchimage during a first processing cycle succeeding the first resistancescan cycle within the first sampling period, wherein the force touchimage represents locations and force magnitudes of objects applied overthe force-sensing layer 130.

As shown in FIGS. 3A, 3B, 3C, and 4 , the system 100 can execute amethod S100 including: during a first period, holding a shield electrodearranged over a resistive touch sensor 120 to a virtual referencepotential in Block Silo and reading resistance values across senseelectrode and drive electrode pairs 121 in the resistive touch sensor120 in Block S112; during a second time period succeeding the first timeperiod, transforming resistance values read from sense electrode anddrive electrode pairs 121 in the resistive touch sensor 120 during thefirst time period into position and a magnitude of a force applied to asurface over the shield electrode 151 in Block S120, reading acapacitance value from the shield electrode 151 in Block S122, andcorrelating the capacitance value with proximity of a mass to thesurface in Block S124; and generating a touch image defining theposition of the force on the surface, the magnitude of the force on thesurface, the proximity of the mass to the surface, and a position of theshield electrode 151 for a sampling period comprising the first timeperiod and the second time period in Block S140.

As shown in FIG. 3A, one variation of the method S100 includes, during afirst resistance scan cycle of a first sampling period: driving a firstshield electrode 151 arranged over a resistive touch sensor 120 to avirtual reference potential in Block Silo; and reading a first set ofresistance values across sense electrode and drive electrode pairs 121in the resistive touch sensor 120 in Block S112. In this variation, themethod S100 also includes, during a first processing cycle succeedingthe first resistance scan cycle of the first sampling period:transforming the first set of resistance values into a first positionand a first magnitude of a first force applied to a surface over theshield electrode 151 in Block S120; releasing the first shield electrode151 from the virtual reference potential in Block S122; reading a firstcapacitance value of the first shield electrode 151 in Block S122; anddetecting proximity of a first object to the surface based on the firstcapacitance value in Block S124. Furthermore, in this variation, themethod S100 includes: generating a first touch image representing thefirst position and the first magnitude of the first force on the surfacefor the first sampling period based on the proximity of the first objectto the surface in Block S140.

As shown in FIG. 3C, another variation of the method S100 includes,during a first resistance scan cycle of a first sampling period: drivinga first shield electrode 151 arranged over a resistive touch sensor 120to a virtual reference potential in Block Silo; and reading a first setof resistance values across sense electrode and drive electrode pairs121 in the resistive touch sensor 120 in Block S112. In this variation,the method S100 also includes, during a first processing cyclesucceeding the first resistance scan cycle of the first sampling period:transforming the first set of resistance values into a first positionand a first magnitude of a force applied to a surface over the shieldelectrode 151 in Block S120; releasing the first shield electrode 151from the virtual reference potential in Block S122; reading a firstcapacitance value of the first shield electrode 151 in Block S122; anddetecting a second proximity of an object to the surface based on thefirst capacitance value in Block S124. Furthermore, in this variation,the method S100 includes, during a second resistance scan cycle of asecond sampling period: driving the first shield electrode 151 to thevirtual reference potential in Block Silo; and reading a second set ofresistance values across sense electrode and drive electrode pairs 121in the resistive touch sensor 120 in Block S112. Finally, this variationof the method S100 includes, during a second processing cycle succeedingthe second resistance scan cycle of the second sampling period:transforming the second set of resistance values into a second positionand a second magnitude of the force applied to the surface in BlockS120; and generating a second touch image representing the secondposition and the second magnitude of the force on the surface for thesecond sampling period based on the first proximity of the object to thesurface in Block S140.

2. Applications

The system 100 includes: a resistive touch sensor 120; apressure-sensitive force-sensing layer 130 over the resistive touchsensor 120; a controller 160 that reads resistance values (or voltages,current draws) across drive and sense electrodes within the resistivetouch sensor 120 and correlates these resistance values with magnitudesof touch inputs over the force-sensing layer 130; and a shield electrodearranged over the force-sensing layer 130 and intermittently driven to avirtual reference potential by the controller 160 to shield theresistive touch sensor 120 from external electric fields. Generally, thesystem can include: a resistive touch sensor 120 and a force-sensinglayer 130 that cooperate to detect locations, contact areas, and forcemagnitudes (or “pressures”) of inputs across a cover layer 141; and ashield electrode that functions to reject or reduce injection of noiseinto the resistive touch sensor 120. For example, the system 100 can beintegrated into a laptop computer, mobile computing device (e.g.,smartphone, tablet), peripheral keyboard, or peripheral trackpad device.In this example, a battery charger, power supply, wireless radio, and/ordisplay connected to or integrated into the device may radiate or emitnoise that interferes with resistance data collected by the resistivetouch sensor 120.

Therefore, the system 100 can include a set of (i.e., one or more)shield electrodes spanning the resistive touch sensor 120, and thecontroller 160 can actively drive the shield electrode(s) 150 to avirtual reference potential (e.g., “ground”) during a resistance scancycle of a sampling period in order to reject or reduce energy radiatedfrom these other components toward the resistive touch sensor 120, whichmay otherwise create noise in resistance data collected from theresistive touch sensor 120 during operation. In particular, duringoperation of a device incorporating the system 100, the controller 160can: drive the shield electrode 151 to a virtual reference potential inBlock Silo and record resistance values across drive and senseelectrodes within the resistive touch sensor 120 in Block S112 during aresistance scan cycle; transform these resistance values into positions,areas, magnitudes of forces, and/or pressures of one or more inputsapplied to the cover layer 141 over the resistive touch sensor 120 inBlock S120 during a subsequent processing cycle; output a “touch image”representing these inputs during this sampling period in Block S140; andrepeat this process for each subsequent sampling period during operationof the device.

During a processing cycle in which the controller 160 transformsresistance data into locations and magnitudes of forces applied to thecover layer 141 and in which the resistive touch sensor 120 is inactive,the controller 160 can also implement surface or projected capacitancesensing techniques to: charge and discharge the set of shield electrodes150; record capacitance values (current leakage, charge time, dischargetime, or total charge/discharge time) across the set of shieldelectrodes 150 in Block S122; and detect the presence of one or moreexternal masses proximal—though not necessarily in contact with—thecover layer 141 in Block S124 based on capacitance values recordedduring this processing cycle. For example, the resistive touch sensor120 can include a number of resistive sensor locations—each defined by ajunction between a drive electrode and sense electrode—that (greatly)exceeds a number of capacitive sensor locations defined by the set ofshield electrodes 150; therefore while processing a relatively large setof (e.g., thousands) resistance values during a processing cycle of asampling period, the controller 160 can also read a relatively smallnumber of (e.g., one, thirty-two) capacitance values from the set ofshield electrodes 150 and transform these capacitance values into anestimate of locations, sizes, and/or types of multiple discrete objectshovering over or in contact with the cover layer 141 during the samesampling period.

Therefore, the controller 160 can drive one shield electrode to avirtual ground potential (e.g., a virtual ground potential, or “0V”)during a resistance scan cycle within a sampling period in order toreject or reduce noise in resistance data collected from the resistivetouch sensor 120 during this sampling period. While these resistancedata are processed during the subsequent processing cycle—and before anext resistance scan cycle in a subsequent sampling period—thecontroller 160 can release the shield electrode 151 from the virtualreference potential and instead sample a capacitance value from theshield electrode. The controller 160 can then: select an input schemefor characterizing one or more discrete force inputs detected on thecover layer 141 by the resistive touch sensor 120 during the samplingperiod; group clusters of discrete force inputs detected at theresistive touch sensor 120; and/or discard select force inputs detectedat the resistive touch sensor 120 (e.g., palm resting on the system 100but not the tip of a stylus); etc. based on this capacitancevalue—recorded substantially immediately after the resistance scancycle—and substantially without sacrificing a sampling rate of theresistive touch sensor 120 or the effectiveness of the shield electrode151 as an active electrostatic shield (or guard) while the resistivetouch sensor 120 is scanned. The controller 160 can also: adjust itssensitivity to transforming resistance values into forces on the coverlayer 141; adjust the scan resolution of the resistance touch sensor;and/or selectively activate and deactivate the resistive touch sensor120 in a subsequent resistance scan cycle based on this capacitancevalue.

The system 100 can also include multiple shield electrodes arranged overthe resistive touch sensor 120. The controller 160 can collectively tiethe shield electrodes to a virtual reference potential while scanningthe resistive touch sensor 120 and then scan the shield electrodes inseries (e.g., in a “capacitance scan period”) while resistance data isprocessed in order to collect higher-resolution data regarding theposition and/or size of an external mass over—but not necessarily incontact with—the system 100.

The shield electrode(s) 150 is described herein in a common shieldconfiguration in which the shield electrode 151 is driven to a virtualreference potential (e.g., to a LO voltage terminal within the system100) during resistance scan cycles. However, the shield electrode(s) 150can alternatively be implemented in a driven guard configuration inwhich the shield electrode 151 is buffered or driven to a measurementcircuit voltage (e.g., to instrument HI voltage terminal within thesystem 100) during resistance scan cycles.

Furthermore, the system 100 can be integrated into a laptop computer, amobile computing device (e.g., a tablet, a smartphone, a smartwatch), aperipheral keyboard, a peripheral trackpad, a gaming controller 160, orany other electronic or computing device to detect inputs entered by auser. For example, the substrate no, the resistive touch sensor 120, andthe force-sensing layer 130 can cooperate to define an opaque touchpadintegrated into a C-side of a laptop computer (i.e., a face of thelaptop computer facing a display when the laptop computer is closed andarranged below the display when the laptop computer is open). In anotherexample, the system 100 can be arranged under a display to form apressure-sensitive touchscreen, and the pressure-sensitive touchscreencan be integrated into a tablet, smartphone, or smartwatch. However, thesystem 100 can define any other form or format and can be integratedinto any other device to detect adjacent objects, to record locationsand magnitudes of forces applied thereover, and to package these datainto touch images throughout operation of the device; the device canthen control its functions based on these touch images.

3. Resistive Touch Sensor and Force-Sensing Layer

As shown in FIGS. 1 and 2 , the touch sensor includes: an array of senseelectrode and drive electrode pairs 121 patterned across a substrate no(e.g., a fiberglass PCB); and a force-sensing layer 130 arranged overthe substrate no in contact with the drive and sense electrode pairs (or“sensor elements”), defining a force-sensitive material 131 exhibitingvariations in local bulk resistance and/or local contact resistanceresponsive to variations in force applied to the cover layer 141 above.As described in U.S. patent application Ser. No. 14/499,001, theresistive touch sensor 120 can include a grid of inter-digitated driveelectrodes and sense electrodes patterned across the substrate no. Theforce-sensing layer 130 can span gaps between each drive and senseelectrode pair across the substrate no such that, when a localized forceis applied to the cover layer 141, the resistance across an adjacentdrive and sense electrode pair varies proportionally (e.g., linearly,inversely, quadratically, or otherwise) with the magnitude of theapplied force. As described below, the controller 160 can readresistance values across each drive and sense electrode pair within thetouch sensor and can transform these resistance values into a positionand magnitude of one or more discrete force inputs applied to the coverlayer 141.

In one implementation, the system includes a rigid substrate 110, suchas in the form of a rigid PCB (e.g., a fiberglass PCB) or a PCB on arigid backing (e.g., an aluminum backing plate); and rows and columns ofdrive and sense electrodes are patterned across the top of the substrate110 to form an array of sensor elements. The force-sensing layer 130 isinstalled over the array of sensor elements and connected to thesubstrate 110 about its perimeter.

4. Controller

Generally, the controller 160 functions to drive the resistive touchsensor 120, to read resistance values between drive and senseelectrodes, to tie the shield electrode 151 to a virtual referencepotential during resistance scan cycles, and to transform resistancedata from the resistive touch sensor 120 into locations and magnitudesof force input over the resistive touch sensor 120. (Alternatively, thecontroller 160 can drive the shield electrode 151 to any other knownvoltage potential relative to a virtual reference potential.)

In one implementation, the controller 160 includes: an array columndriver (ACD); a column switching register (CSR); a column driving source(CDS); an array row sensor (ARS); a row switching register (RSR); and ananalog to digital converter (ADC); as described in U.S. patentapplication Ser. No. 14/499,001. In this implementation, the resistivetouch sensor 120 can include a variable impedance array (VIA) thatdefines: interlinked impedance columns (IIC) coupled to the ACD; andinterlinked impedance rows (IIR) coupled to the ARS. During a resistancescan cycle: the ACD can select the IIC through the CSR and electricallydrive the IIC with the CDS; the VIA can convey current from the drivenIIC to the IIC sensed by the ARS; the ARS can select the IIR within theresistive touch sensor 120 and electrically sense the IIR state throughthe RSR; and the controller 160 can interpolate sensed current/voltagesignals from the ARS to achieve substantially accurate detection ofproximity, contact, pressure, and/or spatial location of a discreteforce input over the resistive touch sensor 120 for the resistance scancycle during a processing cycle within the same sampling period.

For example, a row of drive electrodes in the resistance touch sensorcan be connected in series, and a row of sense electrodes in theresistive touch sensor 120 can be similarly connected in series. Whiledriving the shield electrode(s) 150 to the virtual reference potentialduring a resistance scan cycle of a sampling period, the controller 160can: drive a first row of drive electrodes to a reference voltage whilefloating all other rows of drive electrodes; record a voltage of a firstcolumn of sense electrodes while floating all other columns of senseelectrodes; record a voltage of a second column of sense electrodeswhile floating all other columns of sense electrodes; . . . record avoltage of a last column of sense electrodes while floating all othercolumns of sense electrodes; drive a second row of drive electrodes tothe reference voltage while floating all other rows of drive electrodes;record a voltage of the first column of sense electrodes while floatingall other columns of sense electrodes; record a voltage of the secondcolumn of sense electrodes while floating all other columns of senseelectrodes; . . . record a voltage of the last column of senseelectrodes while floating all other columns of sense electrodes; . . .and finally drive a last row of drive electrodes to the referencevoltage while floating all other rows of drive electrodes; record avoltage of the first column of sense electrodes while floating all othercolumns of sense electrodes; record a voltage of the second column ofsense electrodes while floating all other columns of sense electrodes; .. . record a voltage of the last column of sense electrodes whilefloating all other columns of sense electrodes. The controller 160 canthus sequentially drive rows of drive electrodes in the resistive touchsensor 120; and sequentially read resistance values (e.g., voltages)from rows of sense electrodes in the resistive touch sensor 120.

The controller 160 can also drive the shield electrode 151 and sample acapacitance value from the shield electrode during a capacitance scanperiod, such as preceding, succeeding, or concurrent with a processingcycle for resistance data. For example, the controller 160 can include asingle- or multi-channel capacitive touch sensor driver electricallycoupled to the shield electrode(s) 150, configured to drive the shieldelectrode(s) 150 to a target voltage and to track a charge time, adischarge time, and/or a total charge/discharge time of the shieldelectrode(s) 150 during a processing cycle of a sampling period and todrive the shield electrode(s) 150 to the virtual reference potentialduring a resistance scan cycle.

The controller 160 can therefore: scan thousands of drive and senseelectrode pairs (or “sensor elements”) during a resistance scan period;scan a single or relatively small number of shield electrodes (e.g.,thirty-two or fewer shield electrodes) while these resistance data areprocessed during a processing cycle; and then merge the resistance andcapacitance data into a single touch image for the sampling period (orinto a pair of aligned force and capacitance touch images).

5. Shield Electrode

The shield electrode 151 is arranged over the force-sensing material andis electrically coupled to the substrate 110. Generally, the shieldelectrode 151 functions as an electrostatic shield (or anelectromagnetic guard) for the resistive touch sensor 120 when driven toa virtual reference potential (or when driven to an instrument HIvoltage).

In one implementation: the substrate no defines a rigid planar structure(e.g., a fiberglass PCB); the resistive touch sensor 120 includes anarray of drive and sense electrodes (e.g., multiple rows of driveelectrodes and multiple columns of sense electrodes) patterned acrossthe substrate no as shown in FIG. 2 ; the force-sensing layer 130 isarranged over the resistive touch sensor 120 and is fixed to theresistive touch sensor 120 (or directly to the substrate no) around itsperimeter; a non-conductive buffer layer 140 (e.g., a film of anon-conductive material such as PET, polyimide, or silicone) is appliedacross the force-sensing layer 130 opposite the resistive touch sensor120; the shield electrode 151 is applied or formed across the bufferlayer 140; and a non-conductive cover layer 142 (e.g., a second film ofa non-conductive material) is applied over the shield electrode 151 andthe force-sensing layer 130 to enclose the “stack” and to define anouter cover layer 141. In this implementation, the controller 160 can beinstalled directly onto the substrate no, such as along one or moresides of the resistive touch sensor 120, to form a fully-containedsystem defining a pressure-sensitive surface and configured to output atouch image representing positions and magnitudes of forces applied tothe cover layer 141.

In the foregoing implementation, a tactile overlay—such as a QWERTYkeyboard overlay, a piano key overlay, a MIDI overlay, or a colorpalette overlay—can be transiently installed or placed over the coverlayer 141 to provide tactile positional guidance to a user interfacingwith the system 100 to enter inputs into a connected or integratedcomputing device, a shown in FIG. 4 .

In the foregoing implementation, to enable the force-sensing layer 130to deform—and to therefore exhibit a change in its bulk resistanceproximal a deformation —the buffer layer 140 and cover layer 142 can besimilarly elastic. For example, the buffer and cover layers can eachinclude a thin silicone, polyurethane, or polycarbonate film. The shieldelectrode 151 can also be substantially elastic. For example, the shieldelectrode 151 can include a copper, silver, or aluminum foil or filmbonded to and interposed between the buffer and cover layers. In anotherexample, the shield electrode 151 can include a metal (e.g., copper,silver, or aluminum) film deposited onto the buffer layer 140, such asthrough chemical vapor deposition or sputtering. In a similar example,the shield electrode 151 can include a metallized ink deposited (or“printed”) onto the buffer layer 140 or onto the interior surface of thecover layer 142 before the cover layer 142 is bonded over the bufferlayer 140.

In yet another example, the shield electrode 151 includes: a conductivecarbon film (e.g., carbon nanotubes) deposited across the buffer layer140; and an intermediate metallic (e.g., copper, silver) electrode—infilm, foil, paste, ink or other form—extending along one or more sidesof the conductive carbon film, as shown in FIGS. 8A and 9A. In thisexample, the shield electrode 151 can include: a conductive carbon filmdefining a rectangular perimeter; and an intermediate metallic electrodeextending along both short edges of the carbon nanotube film,electrically coupled to the controller 160, and cooperating with theopposing intermediate metallic electrode to induce a substantiallyuniform electric field across the carbon nanotube film. Similarly, theshield electrode 151 can include: a conductive metallic film defining aperimeter of the first shield electrode 151; and a conductive carbonfilm spanning a region of the force-sensing layer 130 bounded by theconductive metallic film. In other examples, the shield electrode 151can include a conductive ink, a conductive polymer, a graphite sheet, orother conductive material deposited onto, printed on, and/or interposedbetween the buffer layer 140 and/or the cover layer 142.

In another implementation shown in FIG. 6A, the shield electrode 151 isinstalled, applied, or formed directly onto the force-sensitive material131 opposite the resistive touch sensor 120; and an elastic buffer layer140 is bonded over the shield electrode 151 and force-sensitive material131 to define the cover layer 141 and to complete the force-sensinglayer 130. However, the shield electrode 151 can be of any othermaterial and incorporated between the buffer layer 140 and the coverlayer 142 in any other way.

The shield electrode 151 can define a continuous structure (e.g., afilm, sheet, or layer, etc.) over the force-sensitive material 131 ofthe force-sensing layer 130, as shown in FIG. 2 . Alternatively, theshield electrode 151 can define a perforated structure, as shown in FIG.6B. For example, the shield electrode 151 can define a grid array ofsquare or round openings of maximum width (significantly) less than asmallest target wavelength of electromagnetic radiation output bycircuitry within the system 100 and/or by electrical components in otherdevices commonly in use near the system 100. In another example, thesystem 100 can include a grid array of multiple smaller, offset shieldelectrodes spanning the width and length of the force-sensing layer 130but covering less than (e.g., 50% of) the full area of the force-sensinglayer 130.

The shield electrode 151 is electrically coupled to the controller 160via the substrate 110. In one implementation shown in FIGURE SA, 5B, and6B, the force-sensing layer 130 includes a tab 155, such as in the formof a flexible PCB, extending from the perimeter of the buffer layer 140and configured to contact a terminal on the substrate no; and the shieldelectrode 151 includes a trace 154 (e.g., a metalized foil) that extendsfrom the shield electrode 151 to the end of the tab 155. For example,the substrate no can include a receptacle 112 electrically coupled tothe controller 160, and the tab 155 can be inserted into the receptacle112 when the system 100 is assembled, as shown in FIG. 1 , toelectrically couple the shield electrode 151 to the controller 160.Similarly, the buffer layer 140 can include an elastic tab 155 extendingbeyond the perimeter of the force-sensing material and configured toengage the receptacle 112 on the substrate no; and the shield electrode151 can include an electrical trace 154 extending along the elastic tab155 and configured to mate with an electrical connector within thereceptor to electrically couple the shield electrode 151 to thecontroller 160. Furthermore, in the variation described below in whichthe system 100 includes multiple shield electrodes, the tab 155 caninclude a row of traces, each trace 154 coupled to one shield electrode,to one row of shield electrodes, or to one column of shield electrodes,as shown in FIG. 5A; a multi-channel receptacle 112—electrically coupledto the controller 160—can thus be arranged on the substrate no andconfigured to receive the tab 155, as described above, therebyconnecting each shield electrode to the controller 160.

In another implementation shown in FIG. 6A: the substrate 110 includesan electrical pad arranged near a perimeter of the force-sensing layer130 and electrically coupled to a port on the controller 160 via aconductive trace; the buffer layer 140 extends beyond the perimeter ofthe force-sensing material; and the shield electrode 151 extends acrossthe interior face of the buffer layer 140 and includes an electricaltrace 154 extending to a perimeter of the buffer layer 140. In thisimplementation, the buffer layer 140 can be mechanically fastened (e.g.,clamped) or adhered (e.g., bonded) to the substrate 110 with theelectrical trace 154 aligned with and facing the electrical pad on thesubstrate 110. The electrical trace 154 extending from the shieldelectrode 151 along the back surface of the buffer layer 140 can thusmate with the electrical pad on the substrate 110 to electrically couplethe shield electrode 151 to the controller 160. For example, theinterior surface of the buffer layer 140 can be activated to bond to aconductive (e.g., silver and/or carbon nanotube) material, and theconductive material can be printed, deposited, or otherwise appliedacross the interior surface of the buffer layer 140 to form one or moreshield electrodes and one or more electrical traces extending from eachshield electrode to proximal the perimeter of the buffer layer 140. Theelectrical traces can then be masked, an adhesive applied across theshield electrodes and exposed areas of the interior surface of thebuffer layer 140, and the force-sensing material can then be bonded tothe adhesive to complete the force-sensing layer 130/shield electrodeassembly. The assembly can then be installed directly over the substrate110 to electrically couple the shield electrodes to the controller 160via traces on the back surface of the buffer layer 140 and correspondingconductive pads on the substrate no.

5.1 Display

In one variation, the system 100 further includes a display arrangedover the force-sensing layer 130 opposite the substrate 110; and theshield electrode 151 is integrated into the display. For example, thedisplay can include an RGB LCD display with a glass or polymer exteriorsurface that defines the cover layer 141. When arranged over theforce-sensing layer 130 and the resistive touch sensor 120, the displaycan deform inwardly when a force is applied to its exterior surface,thereby locally deforming the force-sensing layer 130, which yields achange in the local bulk resistance of the force-sensitive material 131that is detectable by the resistive touch sensor 120. In this variation,the system 100 can thus define a pressure-sensitive touchscreen, whichcan be integrated into a tablet, smartphone, smartwatch, or othercomputing device to output visual data to a user and to detect manualinputs over the display.

In this variation, the shield electrode 151 can define a continuousconductive, opaque film (or other structure) applied across the backside of the display, interposed between the display and theforce-sensing layer, and configured to: block egress of light from theback side of the display; and to reject noise radiated from the displaytoward the resistive touch sensor 120 when actively driven to thevirtual reference potential. The controller 160 can also recordcapacitance values of the shield electrode 151 and detect objects incontact with or near the cover layer 141 based on the capacitancevalues, as described below.

6. Shield Electrode as Permanent Shield

During operation, the controller 160 can persistently drive (e.g., tie,pull down) the shield electrode 151 to a virtual reference potential,such as to reject noise at the resistive touch sensor 120. Thecontroller 160 can also float the shield electrode 151 outside ofresistance scan cycles in order to reduce total power consumption persampling period.

7. Shield Electrode as Intermittent Shield and Capacitive SenseElectrode

Alternatively, the controller 160 can execute Blocks of the method S100to drive the shield electrode 151 to a virtual reference potentialduring resistance scan cycles and to read a capacitance value from theshield electrode 151 during (or before, or after) processing cycles.

7.1 Surface Capacitance

In one variation, the controller 160 implements surface capacitancetechniques to read a capacitance value from the shield electrode 151 andto detect proximity and/or location of an object on or near the coverlayer 141 based on this capacitance value. For example, during acapacitance scan period within a processing cycle, the controller 160can apply a voltage to each corner of the shield electrode 151 (e.g.,via four electrical traces, each extending from one corner of the shieldelectrode) in Block S122, which may yield a substantially uniformelectrostatic field across the shield electrode. An object (e.g., ahuman finger) approaching or touching the cover layer 141 can bleedcharge from the shield electrode. The location of this object near or incontact with the cover layer 141 may draw different levels of currentfrom each corner of the shield electrode. The controller 160 can thusmeasure these levels of current draw at each corner of the shieldelectrode 151 and transform these current values into a location of theobject near or in contact with the cover layer 141 in Blocks S122 andS124. Alternatively, the controller 160 can apply a voltage to onecorner of the shield electrode, measure current leakage from the shieldelectrode, and determine whether a conductive object is present on ornear the cover layer 141 based on this leakage current.

In this variation, the system 100 can include multiple shieldelectrodes, and the controller 160 can implement similar surfacecapacitance techniques to collect capacitance values from each shieldelectrode and to determine whether a conductive object is present on ornear the cover layer 141—such as adjacent a particular shield electrodein the set—based on these capacitance values. For example, while testinga first shield electrode 151 in the set, the controller 160 canelectrically decouple (or “float”) all other shield electrodes in theset in Block S122, read a capacitance value from the first shieldelectrode 151 in Block S122, and then repeat this process for each othershield electrode in the system 100.

However, the controller 160 can implement any other surface capacitancetechniques to collect capacitance data representative of the presenceand/or location of one or more objects on or near the cover layer 141.

7.2 Projected Self-Capacitance: Secondary Electrode

In one variation shown in FIGS. 4 and 9B, the system 100 furtherincludes a secondary electrode arranged on the substrate 110 andconfigured to capacitively couple to the shield electrode; and thecontroller 160 implements projected capacitance techniques to read acapacitance value from the shield electrode 151 and to detect proximityand/or location of an object on or near the cover layer 141 based onthis capacitance value. In particular, in this variation, the controller160 can drive the shield electrode 151 to a virtual reference potentialin a shield configuration (or to an instrument HI voltage in a guardconfiguration) during a resistance scan cycle in Block Silo and thenread a capacitance value from the shield electrode 151 (or the secondaryelectrode) in Block S122 by charging and discharging the shieldelectrode 151 (or the secondary electrode) during a succeedingcapacitance scan period. For example, the secondary electrode caninclude a conductive film bonded to the substrate 110, facing theforce-sensing layer 130, and offset laterally from the shield electrode,such as extending along the perimeter of one or more sides of the shieldelectrode.

During capacitance scan periods, the controller 160 can drive the shieldelectrode 151 to a target voltage potential; the secondary electrode cancapacitively couple to the shield electrode 151 and can leak charge fromthe shield electrode; and the controller 160 can track a charge time (ora discharge time, or a total charge/discharge time) for the shieldelectrode 151 in Block S122 before discharging the shield electrode. Inparticular, an object moving toward, away, or through an electricalfield—formed between the ground and secondary electrodes when the shieldelectrode 151 (or the secondary electrode) is driven—may disrupt thiselectrical field, thereby affecting the charge time (or a dischargetime, or a total charge/discharge time) of the shield electrode 151 (orthe secondary electrode). The controller 160 can thus detect presence ofan (conductive) object over the cover layer 141 and/or a size of the(conductive) object over the cover layer 141 by comparing this chargetime (or the discharge time, the total charge/discharge time, or othercapacitance value) for the current capacitance scan period to a chargetime for a preceding capacitance scan period, to an average charge timefor a set of preceding capacitance scan periods, or to a baseline chargetime for the shield electrode.

In one implementation, the controller 160 stores a baseline dischargetime—from a target voltage HI to a target voltage LO—for the shieldelectrode 151 and records a discharge time—from the target voltage HI tothe target voltage LO—for the shield electrode 151 for each capacitancescan period. In this implementation, the controller 160 can determine:that a small mass is currently over the cover layer 141 if the recordeddischarge time for the current capacitance scan period is slightly lessthan the baseline discharge time; and that a larger mass is currentlyover the cover layer 141 if the recorded discharge time for the currentcapacitance scan period is significantly less than the baselinedischarge time in Block S124.

Alternatively, the controller 160 can: execute multiple capacitance scanperiods during one processing cycle; record a capacitance value from theshield electrode 151 (or secondary electrode) during each capacitancescan period in Block S122; and compare these capacitance values recordedduring the processing cycle to determine whether an external object ismoving over or along the cover layer 141 in Block S124. For example, ifa rate of change in capacitance values recorded during this processingcycle exceeds a threshold rate, the controller 160 can determine that anobject is moving near or across the cover layer 141; if a rate of changein capacitance values recorded during this processing cycle remainsbelow the threshold rate, the controller 160 can determine that anobject is not moving near or across the cover layer 141.

In this implementation, the system 100 can also include multiple shieldelectrodes patterned across (e.g., integrated into) a single plane ofthe force-sensing layer 130, as shown in FIG. 9C, and the controller 160can implement similar projected self-capacitance techniques to scan eachshield electrode and to determine whether an object is present on ornear the cover layer 141 adjacent each shield electrode and/or todetermine the location of this object on the cover layer 141. Forexample, each shield electrode can be independently coupled to thecontroller 160, such as via discrete traces running along a single tab155 extending from the buffer layer 140 and configured to engage areceptacle 112 arranged on the substrate no, as described above. In thisexample, the controller 160 can implement projected self-capacitancetechniques to read a capacitance value from each shield electrode (oneor more times) during a capacitance scan period in Block S122. Inparticular, the controller 160 can: tie all shield electrodes to avirtual reference potential during a resistance scan in Block Silo; andsequentially charge and discharge each shield electrode—while floatingall other shield electrodes—and record a capacitance value (e.g., acharge time, a discharge time, or a total charge/discharge time) fromeach shield electrode during a capacitance scan period in Block S122.The controller 160 can then transform these capacitance values into apresence and location of one or more objects on or near the cover layer141 in Block S124.

However, the controller 160 can implement any other projectedself-capacitance techniques to read a capacitance value from one or moreshield electrodes (and/or a secondary electrode arranged on thesubstrate no) and to transform these capacitance values into detectionof an object on or near the cover layer 141.

7.3 Projected Self-Capacitance: Two Shield Electrodes

In one variation, the system 100 further includes a second shieldelectrode 152 coupled to (e.g., arranged over) the force-sensing layer130 adjacent the first shield electrode 151, extending across a secondregion of the force-sensing layer 130, and electrically coupled to thecontroller 160 via the substrate 110. In this variation, the first andsecond shield electrodes cooperate to form an active shield across theresistive touch sensor 120 and the force-sensing layer 130 when drivento the virtual reference potential during a resistance scan cycle,thereby rejecting or reducing noise radiated toward the resistive touchsensor 120 and improving accuracy of resistance data read from theresistive touch sensor 120. In this variation, the controller 160 canalso implement projected self-capacitance techniques to: read acapacitance value (e.g., a charge time, a discharge time, etc.) betweenthe first electrode and the second electrode during a processing cycle;and to detect proximity of an object adjacent the first shield electrode151 during the first sampling period based on this capacitance value.

In one configuration, the resistive touch sensor 120 defines arectilinear touch area, and the system 100 includes two rectilinearshield electrodes, including a right shield electrode arranged over aright region of the resistive touch sensor 120 and a left shieldelectrode arranged over a left region of the resistive touch sensor 120,as shown in FIG. 9B. In this configuration, the controller 160 can:ground the left shield electrode; drive the right shield electrode to atarget voltage potential such that the right shield electrodecapacitively couples to the left shield electrode; read a capacitancevalue from the left and right shield electrodes; and determine whetheran (conductive) object is near the cover layer 141 based on thiscapacitance value according to projected self-capacitance techniquesduring a processing cycle.

7.4 Projected Self-Capacitance: Multiple Shield Electrodes

In another configuration shown in FIGS. 4 and 9C, the system 100includes a grid array of shield electrodes, such as a 2×4 grid array ofeight rectangular shield electrodes, a 3×6 grid array of eighteenhexagonal shield electrodes, or a 4×8 grid array of thirty-two circularshield electrodes, each independently coupled to one channel of thecontroller 160. In this configuration, the grid array of shieldelectrodes can be arranged in a single plane over (or within) theforce-sensing layer 130, and the controller 160 can implement projectedself-capacitance techniques, as described above, to read capacitancevalues from each shield electrode during a capacitance scan period andto correlate these capacitance values with a mass over one or moreshield electrodes in the grid array based on baseline capacitance valuesassigned to or calculated for each shield electrode.

For example, adjacent shield electrodes can be grouped as sensingelectrode and sensor ground electrode pairs. In Block S110, during acapacitance scan period, the controller 160 can: tie a first sensorground electrode to ground; drive a first sensing electrode—adjacent thefirst sensor ground electrode—to a target voltage potential over thefirst sensor ground electrode; float all other shield electrodes; andread a capacitance value from the sensing electrode representative ofparasitic capacitance between the first sensing electrode and the firstsensor ground electrode. The controller 160 can then float the firstsensing electrode and the first sensor ground electrode and repeat thisprocess for each other pair of sensing and sensor ground electrodes inBlock S122. In this example, the controller 160 can also pair a singlesensor ground electrode with multiple sensing electrodes, such as asingle round sensor ground electrode centered within a cluster of fourround sensing electrodes. The controller 160 can also store eachcapacitance value with a known location of its corresponding sensingelectrode over the resistive touch sensor 120 and then process eachcapacitance value, as described above, to determine whether an object islocated on or near the known location of each shield electrode.Therefore, in this configuration, the controller 160 can thus collecthigh-resolution capacitance data in Block S122 and transform these datainto both whether an object is present near the cover layer 141 and anapproximate location of this object over the cover layer 141 during aprocessing cycle based on known locations of these shield electrodes inBlock S124.

However, during a resistance scan cycle, the controller 160 can driveall shield electrodes—including all sensing electrodes and sensor groundelectrodes—to the virtual reference potential; the shield electrodes canthus cooperate to form an active shield across the resistive touchsensor 120 to reject or reduce noise radiated toward the resistive touchsensor 120 by external electronic circuitry.

7.5 Projected Mutual-Capacitance: Grid Array of Shield Electrodes

In another variation shown in FIG. 9D, the system 100 includes multiplerows of shield electrodes in a first plane and multiple columns ofshield electrodes in a second plane vertically offset from (e.g., above)the first plane, and each row and each column of shield electrodes iselectrically coupled to the controller 160. During a capacitance scanperiod, the controller 160 can sequentially float and drive each row ofshield electrodes and sequentially float and ground each column ofshield electrodes (or vice versa) according to projectedmutual-capacitance sensing techniques in order to detect presence, size,and/or relative location of one or more objects proximal the cover layer141 in Block S124. For example, during a capacitance scan period withina processing cycle, the controller 160 can: sequentially readcapacitance values from pairs of adjacent in-row and in-column shieldelectrodes; generate a capacitance image representing locations andsizes of objects proximal the force-sensing layer 130 based oncapacitance values read from these shield electrode pairs and baselinecapacitance values and/or previous capacitance values read from theseshield electrode pairs during the same or previous processing cycle; andthen pair this capacitance image with a force touch image generatedduring the same sampling period in Block S140.

However, during a resistance scan cycle, the controller 160 can driveall rows and columns of shield electrodes to the virtual referencepotential (e.g., or to an instrument LO potential or to an instrument HIpotential) in Block Silo; the shield electrodes can thus cooperate toform an active shield across the resistive touch sensor 120 to reject orreduce noise radiated toward the resistive touch sensor 120 by externalelectronic circuitry.

7.6 Multiple Shield Electrode Layers

In yet another variation, the system 100 includes multiple layers ofshield electrodes. For example: the system 100 can include a first layerof shield electrodes and a second layer of shield electrodes; and thecontroller can drive the first layer of electrodes to the virtual groundpotential during both resistance and processing periods. However, inthis example, the controller can: selectively drive sense electrodes inthe second layer to the virtual ground potential during resistance scancycles, thereby cooperating with the first layer of shield electrodes toreject noise in the resistive touch sensor 120; and selectively readcapacitance values from sense electrodes in the second layer duringprocessing cycles, as described above, to detect presence of masses nearthe touch sensor surface.

However, the system 100 can include any other number, geometry, and/orconfiguration of shield electrodes, and the controller 160 can implementany other methods or techniques to read capacitance values from theseshield electrodes during capacitance scan periods during operation ofthe system 100.

8. Touch Image

In Block S140, (e.g., during a processing cycle), the controller 160transforms resistance data collected from the resistive touch sensor 120during a preceding resistance scan cycle and capacitance valuescollected from the shield electrode(s) 150 during a concurrent orpreceding capacitance scan period into a touch image representative ofobjects near the cover layer 141 and/or forces applied to the coverlayer 141 during the current sampling period, as shown in FIG. 4 .Generally, the controller 160 can generate a touch image that includes atime of the corresponding sampling period (e.g., a start time or an endtime of the sampling period), an address (e.g., position) of each senseand drive electrode pair on the resistive touch sensor 120 at which aforce is detected and a magnitude of this force, and an approximateposition and/or size of one or more objects (i.e., masses) detected overthe cover layer 141. For example, the controller 160 can generate atouch image including a first matrix representing force magnitudes—abovea baseline force magnitude—applied to the cover layer 141 over eachsense and drive electrode pair in the resistive touch sensor 120 and asecond matrix representing a proximity and/or size of a mass detectednear each shield electrode over the force-sensing layer 130. Inparticular, in this example, the controller 160 can: generate a forceimage representing magnitudes of forces applied across the cover layer141 proportional to magnitudes of differences between a set ofresistance values read during a resistance scan cycle and baselineresistance values for the resistive touch sensor 120; generate acapacitance image representing objects detected proximal the surfacebased on difference magnitudes between a set of capacitance valuesrecorded during subsequent capacitance scan periods and baseline (orprevious) capacitance values for the set of shield electrodes 150; alignthe capacitance image to the force image; and package the capacitanceimage and the force image into a touch image for the current samplingperiod.

The controller 160 can then pass this touch image to a connected device,such as a laptop computer or a tablet over a wired or wirelessconnection substantially in real-time. In this example, the connecteddevice can update a connected or integrated graphical user interfaceaccording to the touch image, such as by repositioning a graphical modelor manipulating a virtual control surface within the graphical userinterface based on a position, size, force magnitude, and/or type of oneor more force inputs represented in the first matrix and/or based on thesize and/or position of adjacent masses represented in the secondmatrix.

The controller 160 can repeat this process for each subsequent samplingperiod during operation of the system 100.

8.1 Merging Resistance and Capacitance Data

In one implementation shown in FIG. 3A, during a first sampling period,the controller 160: scans the resistive touch sensor 120 during a firstresistance scan cycle in Block S112; upon completion of the firstresistance scan cycle, scans the shield electrodes(s) during a firstcapacitance scan period in Block S122 while performing initialprocessing on the resistance data from the first resistance scan cyclein Block S120; and then generates a first touch image for the firstsampling period from the resistance data from the first resistance scancycle and the capacitance data from the first capacitance scan period inBlock S140. The controller 160 then repeats this process for a secondsampling period.

In a similar implementation shown in FIG. 3B, during a first samplingperiod, the controller 160: scans the resistive touch sensor 120 duringa first resistance scan cycle in Block S112; scans the shieldelectrodes(s) during a first capacitance scan period upon completion ofthe first resistance scan cycle in Block S122; and, during a firstprocessing cycle, generates a first touch image for the first samplingperiod from the resistance data from the first resistance scan cycle andthe capacitance data from the first capacitance scan period in BlockS140. The controller 160 then repeats this process for a second samplingperiod.

In another implementation shown in FIG. 3C, during a first samplingperiod, the controller 160: scans the resistive touch sensor 120 duringa first resistance scan cycle in Block S112; upon completion of thefirst resistance scan cycle, scans the shield electrodes(s) during afirst capacitance scan period in Block S122 while generating a firsttouch image for the first sampling period from the resistance data fromthe first resistance scan cycle in Block S140. In this implementation,during a second sampling period, the controller 160: scans the resistivetouch sensor 120 during a second resistance scan cycle in Block S112;upon completion of the second resistance scan cycle, scans the shieldelectrodes(s) during a second capacitance scan period in Block S122while generating a second touch image for the first sampling period fromthe resistance data from the second resistance scan cycle and thecapacitance data from the first capacitance scan period in Block S140.During a third sampling period, the controller 160 similarly mergesresistance data from a third resistance scan cycle and capacitance datafrom the second capacitance scan period into a third touch image for thethird sampling period in Block S140.

8.2 Multiple Capacitance Scan Periods Per Processing Cycle

As described above, the controller 160 can also execute multiplecapacitance scan periods per processing cycle within one sampling periodin Block S122. For example, while processing resistance values recordedduring a previous resistance scan cycle, the controller 160 can: read afirst set of capacitance values (e.g., charge times) between shieldelectrodes in the system 100 during a first capacitance scan period inBlock S122; read a second set of capacitance values between these shieldelectrodes in Block S122; and then detect proximity of an object to aparticular region of the cover layer 141 based on differences betweenthe first set of capacitance values and the second set of capacitancevalues in Block S124. In particular, the controller 160 can: collecthigh-resolution resistance data (e.g., resistance values) through arelatively large number of sense electrode and drive electrode pairs 121in the resistive touch sensor 120 during a resistance scan cycle; andcollect low(er)-resolution capacitance data representing objects on ornear the cover layer 141 through a relatively small number of shieldelectrodes while also processing resistance data into force (orpressure) input values during a processing cycle. Because a capacitancescan period in which a relatively small number of shield electrodes arescanned may require (significantly) less time than processing a largenumber of resistance values, the controller 160 can execute multiplecapacitance scan periods and process resulting capacitance values into acapacitance image during a single processing cycle.

8.3 Labeling Force Areas in the Touch Image

In Block S140, the controller 160 can also characterize a type of inputor input object in contact with the cover layer 141 by mergingcapacitance values read from the shield electrode 151 with resistancevalues collected from the resistive touch sensor 120.

For example, the controller 160 can correlate a small force contactarea—detected through the resistive touch sensor 120 during a resistancescan cycle—and a relatively small mass over the cover layer 141—detectedthrough the electrode in a succeeding or preceding capacitance scanperiod—with a pen, stylus, or small paint brush in contact with thesystem 100. In this example, the controller 160 can also correlate abroad force contact area and a relatively small mass over the coverlayer 141 with a broad paint brush in contact with the cover layer 141,and the controller 160 can correlate a broad force contact area and arelatively large mass over the cover layer 141 with a palm or fist incontact with the system 100.

Similarly, when a user draws a substantially non-conductive stylus overthe cover layer 141, the resistive touch sensor 120 can detect thepresence and location of a first object in contact with the cover layer141. However, because the stylus is substantially non-conductive, thecontroller 160 may not detect a (substantial) change (or “perturbation”)in a capacitance value of a first shield electrode 151 proximal thedetected location of the first object. The controller 160 can thuscorrelate the force input area of the first object detected by theresistive touch sensor 120 and the lack of capacitance change at thefirst shield electrode 151 with input by a non-conductive object (e.g.,a stylus). In this implementation, the resistive touch sensor 120 canalso detect the presence and location of a second object in contact withthe cover layer 141 adjacent the first object, and the controller 160can detect a change (or “perturbation”) in a capacitance value of asecond shield electrode 152 proximal the detected location of the secondobject. Based on the size and position of the input force area of thesecond object detected by the resistive touch sensor 120 and thecapacitance change at the second shield electrode 152, the controller160 can correlate the second object with a conductive object (e.g., auser's palm), reject the second object in favor of the first object, andoutput a touch image (described below) that includes the force magnitudeand position of the force input area of the first object, exclusive ofthe force magnitude and position of the force input area of the secondobject. Alternatively, the system 100 can output a touch image thatincludes the force magnitudes and positions of the force input areas ofboth the first object and the second object but labeled (or “tagged”)with object types (e.g., stylus and palm, respectively), withconductivity, or with conductivity class (e.g., non-conductive andconductive, respectively).

For example, during a processing cycle, the controller 160 can transforma set of resistance values recorded during a resistance scan cycle into:a first magnitude of a first force applied across a first contact areaover the cover layer 141; a second magnitude of a second force appliedacross a second contact area over the cover layer 141, wherein thesecond contact area is distinct from and smaller than the first contactarea; identify a first object proximal the first contact area as otherthan a stylus and identifying a second object proximal the secondcontact area as a stylus in response to a first perturbation representedin the set of capacitance values proximal the first contact areaexceeding a second perturbation in the set of capacitance valuesproximal the second contact area; and then generate a touch imagedefining the first contact area as other than a stylus input and labeledwith the first magnitude and defining the second contact area as astylus input and labeled with the second magnitude.

9. Input Schema

In Block S140, the controller 160 can also select an input schema forcharacterization of forces applied to the cover layer 141 based oncapacitance values read from the shield electrode(s) 150. In theimplementation describe above in which the system 100 includes a leftshield electrode and a right shield electrode, the controller 160 (or acomputing device wired or wirelessly connected to the system 100)processes a single force input—sensed through the resistive touch sensor120—according to a primary input scheme. However, in thisimplementation, when the controller 160 detects a first force input overthe right side of the resistive touch sensor 120 and a second, discreteforce input over the left side of the resistive touch sensor 120, thecontroller 160 can select an input scheme for each of the first andsecond force inputs based on capacitance values read from the right andleft shield electrodes. In particular, the controller 160 can: read thecapacitance values from the right and left shield electrodes (e.g.,while resistance data from a preceding resistance scan is processedduring a processing cycle); transform these capacitance values into afirst approximation of a size of a mass over the right shield electrodeand into a second approximation of a size of a mass over the left shieldelectrode; and then assign a primary input scheme to the first forceinput (e.g., a right hand) and assign a secondary input scheme to thesecond force input (e.g., a left finger) if the first approximation ofthe size of the mass over the right shield electrode exceeds the secondapproximation of the size of the mass over the left shield electrode (orvice versa).

In one example of the foregoing implementation, while a user draws a penacross the right side of the cover layer 141 with his right hand andintermittently swipes the surface of the left side of the cover layer141 with his left index finger, the controller 160 can track the forceinputs from the pen and the user's left index finger through theresistive touch sensor 120 and can track positions ofmasses—corresponding to the user's right hand and left indexfinger—through the left and right shield electrodes. Because the user'sright hand may cause a greater protuberance in the capacitance value ofthe right shield electrode than the user's left index finger may causein the capacitance value of the left shield electrode, the controller160 can determine that the mass over the right electrode exceeds themass over the left electrode. The controller 160 can then assign aprimary input scheme to force inputs detected over the right side of theresistive touch sensor 120 and assign a secondary input scheme to forceinputs detected over the left side of the resistive touch sensor 120regardless of the size of the force contact areas over the right andleft regions of the resistive touch sensor 120 (which may be greater forthe user's index finger than for the tip of the pen). For example, acomputing device connected to the system 100 can update a graphical userinterface to depict a line that follows the path of the force input overthe right side of the resistive touch sensor 120 according to theprimary input scheme, and the computing device can update a width and/orcolor of a line depicted in the graphical user interface based on inputsover the left side of the resistive touch sensor 120 according to thesecondary input scheme.

The controller 160 can implement similar methods and techniques toassign an input scheme to a force input detected on the resistive touchsensor 120 based on a proximity, a rate of approach, or a hover time,etc. of a mass near, toward, or over an adjacent shield electrode.

Furthermore, in this configuration, the controller 160 can detectmultiple discrete force inputs across the resistive touch sensor 120,detect a mass over one or both right and left shield electrodes, andthen group clusters of detected force inputs based on the estimated sizeof a mass over each shield electrode, as shown in FIG. 4 . For example,the controller 160 can identify—from a scan of the resistive touchsensor 120 during a resistance scan cycle—that four distinct forceinputs are present over the right side of the cover layer 141 and thattwo distinct force inputs are present over the left side of the coverlayer 141. In this example, the controller 160 can then identify—from ascan of the shield electrodes during a subsequent processing cycle—thata mass is present over the right side of the cover layer 141, that amass is present over the left side of the cover layer 141, and that thefluctuations in the capacitance value of the right rough electrode aredecoupled from (e.g., do not vary at the same frequency as) fluctuationsin the capacitance value of the left rough electrode. The controller 160can thus group the four force inputs over the right side of the coverlayer 141 and map this group to the user's right hand, and thecontroller 160 can group the two force inputs over the left side of thecover layer 141 and map this group to the user's left hand.

In this configuration, the controller 160 can also implement methods andtechniques described above to intermittently activate and deactivate theresistive touch sensor 120 based on approach of a mass toward the coverlayer 141 and departure of the mass from the cover layer 141, asdetermined from fluctuations in the capacitance values of the shieldelectrodes. For example, the controller 160 can selectively activate anddeactivate the right side of the resistive touch sensor120—independently of the left side of the resistive touch sensor120—based on approach (and departure) of a mass toward the right side ofthe cover layer 141, as determined from fluctuations in the capacitancevalue of the right shield electrode, and vice versa.

10. Hover Detection and Resistive Touch Sensor Activation

In one variation, in Block S112, the controller 160 selectivelyactivates the resistive touch sensor 120 based on detected presence ofan object near the cover layer 141, as determined from perturbations incapacitance values read from the shield electrode(s) 150. For example,once the controller 160 determines that no force is present on the coverlayer 141 based on resistance data collected during a resistance scancycle and that no object is currently near the cover layer 141 based oncapacitance values collected during a neighboring capacitance scanperiod, the controller 160 can deactivate the resistive touch sensor 120in Block Silo. However, the controller 160 can continue to scan theshield electrodes for an approaching object in Block S122 and thenreactivate the resistive touch sensor 120 once an approaching mass isdetected based on a perturbation in capacitance values read from theshield electrodes, thereby reducing power consumption required to scanand process data from the resistive touch sensor 120 without sacrificingsensitivity to inputs on the cover layer 141 during operation of thesystem 100.

In one example, at startup, the controller 160 scans both the resistivetouch sensor 120 and the shield electrode; if no local force input isdetected at the resistive touch sensor 120, the controller 160deactivates the resistive touch sensor 120 and only reactivates theresistive touch sensor 120 (i.e., scans the resistive touch sensor 120during resistance scan cycles) once proximity of a mass is detectedbased on a change in a capacitance value read from one or more shieldelectrodes. In this example, during a first resistance scan cycle of afirst sampling period, the controller 160 can: drive the first shieldelectrode 151 to the virtual reference potential; and read a first setof resistance values across sense electrode and drive electrode pairs121 in the resistive touch sensor 120. During a first processing cyclesucceeding the first resistance scan cycle in the first sampling period,the controller 160 can: detect absence of a local force applied to thesurface in response to resistance values in the first set of resistancevalues remaining below a default threshold resistance value; release thefirst shield electrode 151 from the virtual reference potential; read afirst capacitance value of the first shield electrode 151; and detectabsence of an object proximal the cover layer 141 during the firstsampling period based on the first capacitance value. During a secondresistance scan cycle of a second sampling period succeeding the firstsampling period, the controller 160 can deactivate the resistive touchsensor 120 in response to detecting absence of forces applied to thecover layer 141 and absence of objects proximal the surface during thefirst sampling period. During a second processing cycle succeeding thesecond resistance scan cycle in the second sampling period, thecontroller 160 can: read a second capacitance value of the first shieldelectrode 151; and detect a first object proximal the surface during thesecond sampling period based on the second capacitance value. During athird sampling period (immediately) succeeding the second samplingperiod, the controller 160 can drive the first shield electrode 151 tothe virtual reference potential and read a third set of resistancevalues during the third resistance scan cycle of the third samplingperiod in response to detecting the first object proximal the surfaceduring the second sampling period.

The controller 160 can therefore track changes in capacitance values ofthe shield electrode over time in order to detect a mass approaching—butnot touching—the cover layer 141 in Block S124 and to selectivelyactivate and deactivate the resistive touch sensor 120 accordingly inBlock S110. The controller 160 can implement similar methods andtechniques to track a mass removed from—but still near—the cover layer141. For example, the controller 160 can be configured to detect achange in the capacitance value of the shield electrode 151 for anadjacent mass up to 1″ from the cover layer 141. In this example,following application of and subsequent removal of a force on thesurface of the cover layer 141, the controller 160 can continue to scanand process resistance values from the resistive touch sensor 120 untilno detectable change in the capacitance value of the shield electrode151 is read from the shield electrode 151 or until a rate of change incapacitance value of the shield electrode 151 remains below a thresholdrate for a threshold duration of time.

11. Local Sensitivity Adjustment

In another variation shown in FIGS. 7A and 7B, in Block S120, thecontroller 160 selectively adjusts a force input sensitivity applied toresistance data collected during a resistance scan cycle based oncapacitance data collected during a previous (or concurrent) capacitancescan period.

For example, if the controller 160 detects no local application of forceon the cover layer 141 based on resistance values collected duringpreceding resistance scan cycles but does detect an object near (e.g.,approaching) a particular subregion of the cover layer 141 based oncapacitance values collected during a preceding capacitance scan period,the controller 160 can: assign a high input sensitivity to a firstsubset of sense electrode and drive electrode pairs 121—in the resistivetouch sensor 120—adjacent (and extending slightly beyond) thisparticular subregion of the cover layer 141 while persisting a low(er)input sensitivity to all other (i.e., a second subset of) senseelectrode and drive electrode pairs 121 in the resistive touch sensor120. In this example, the controller 160 can: compare resistance valuesrecorded from the first subset of sense electrode and drive electrodepairs 121 during a resistance scan cycle to a relatively smallresistance change threshold; and thus detect application of a force tothe cover layer 141 within or proximal the particular subregion if aresistance value—read from a sense electrode and drive electrode pair121 within the first subset—differs from 1) a baseline resistance valueor 2) a resistance value recorded from this sense electrode and driveelectrode pair 121 during a previous sampling period by more than thisrelatively small, high-sensitivity resistance change threshold. However,the controller 160 can detect application of a force to the cover layer141 outside of the particular subregion only if a resistance value—readfrom a sense electrode and drive electrode pair 121 in the secondsubset—differs from 1) the baseline resistance value or 2) a resistancevalue recorded from this sense electrode and drive electrode pair 121during a previous sampling period by more than a relatively large,low(er)-sensitivity resistance change threshold.

In one implementation, the controller 160 can drive the set of shieldelectrodes 150 to the virtual reference potential and read a first setof resistance values across sense electrode and drive electrode pairs121 in the resistive touch sensor 120 during a first resistance scancycle of a first sampling period. The controller 160 can then detectabsence of a local force applied to the surface in response toresistance values in the first set of resistance values remaining belowa default threshold resistance value; release the set of shieldelectrodes 150 from the virtual reference potential; read a first set ofcapacitance values of the set of shield electrodes 150; and detectabsence of an object proximal the cover layer 141 during the firstsampling period based on the first set of capacitance values during afirst processing cycle succeeding the first resistance scan cycle in thefirst sampling period. During a second resistance scan cycle of a secondsampling period succeeding the first sampling period, the controller 160can: drive the set of shield electrodes 150 to the virtual referencepotential; and read a second set of resistance values across senseelectrode and drive electrode pairs 121 in the resistive touch sensor120. During a second processing cycle succeeding the second resistancescan cycle in the second sampling period, the controller 160 can: detectabsence of a local force applied to the cover layer 141 in response toresistance values in the second set of resistance values remaining belowthe default threshold resistance value; release the set of shieldelectrodes 150 from the virtual reference potential; read a second setof capacitance values of the set of shield electrodes 150; and detect afirst object proximal a particular location on the cover layer 141during the second sampling period based on the second set of capacitancevalues. During a third resistance scan cycle of a third sampling periodsucceeding the second sampling period, the controller 160 can: drive theset of shield electrodes 150 to the virtual reference potential; andread a third set of resistance values across sense electrode and driveelectrode pairs 121 in the resistive touch sensor 120. During a thirdprocessing cycle succeeding the third resistance scan cycle in the thirdsampling period and in response to detecting the first object proximalthe particular location on the cover layer 141 during the secondsampling period, the controller 160 can: select a second (i.e.,high-sensitivity) resistance change threshold less than the defaultresistance change threshold; and detect a first force applied to thesurface at a first position proximal the particular location of thefirst object according to a particular resistance value—in the third setof resistance values and corresponding to the first position—exceedingthe second threshold resistance value.

The controller 160 can therefore implement a greater sensitivity tochanges in resistance values read from the resistive touch sensor120—which correlate to changes in local forces applied to the coverlayer 141—across all or a particular subset of sense electrode and driveelectrode pairs 121 in the resistive touch sensor 120 based on presenceof an object detected near the cover layer 141 based on capacitancevalues read from the shield electrode(s) 150 during processing cyclesthroughout operation of the system 100.

The controller 160 can implement similar methods and techniques toadjust sensitivity to force inputs on the cover layer 141 proportionalto a detected size of an object approaching the cover layer 141. Forexample, the controller 160 can: detect a relatively small perturbationin capacitance value at a first shield electrode 151; associate thissmall perturbation with approach of an object of relatively small masstoward a first region of the cover layer 141 adjacent the first shieldelectrode 151; and selectively apply a lower resistance change thresholdto resistance values read from a first subset of sense electrode anddrive electrode pairs 121 adjacent this first region in order to achievegreater sensitivity to force inputs applied to the cover layer 141 withsmall objects, such as with a stylus or finger. Conversely, thecontroller 160 can: detect a relatively large perturbation incapacitance value at a second shield electrode 152; associate this largeperturbation with approach of an object of relatively large mass towarda second region of the cover layer 141 adjacent the second shieldelectrode 152; and selectively apply a higher resistance changethreshold to resistance values read from a second subset of senseelectrode and drive electrode pairs 121 adjacent this second region inorder to reduce sensitivity to force inputs applied to the cover layer141 with larger objects, such as with a palm or forearm.

The controller 160 can implement similar methods and techniques toadjust sensitivity to force inputs on the cover layer 141 proportionalto a speed at which an object approaches the cover layer 141. Forexample, the controller 160 can: estimate a rate at which an objectapproaches a region of the cover layer 141 based on a rate of change incapacitance values read from an adjacent shield electrode over asequence of sampling periods; and then adjust a resistance changethreshold—for resistance values read from a subset of sense electrodeand drive electrode pairs 121 adjacent this region—inversely proportionto the approach speed of the object. The controller 160 can thus achievea high sensitivity to input forces that approach the cover layer 141slowly and a lower sensitivity to input forces that approach the coverlayer 141 quickly.

12. Local Resolution Adjustment

In another variation shown in FIGS. 7A and 7B, in Block Silo, thecontroller 160 selectively adjusts a resolution with which thecontroller 160 scans sense electrode and drive electrode pairs 121 inthe resistive touch sensor 120 during a current resistance scan cyclebased on capacitance data collected during a previous (or concurrent)capacitance scan period. For example, if the controller 160 detects nolocal application of force on the cover layer 141 based on resistancevalues collected during preceding resistance scan cycles but does detectan object near (e.g., approaching) a particular subregion of the coverlayer 141 based on capacitance values collected during a precedingcapacitance scan period, the controller 160 can: assign a high scanningresolution to a first subset of sense electrode and drive electrodepairs 121—in the resistive touch sensor 120—adjacent this particularsubregion of the cover layer 141; while persisting a low(er) scanresolution across all other (i.e., a second subset of) sense electrodeand drive electrode pairs 121 in the resistive touch sensor 120. In thisexample, the controller 160 can scan each sense electrode and driveelectrode pair 121 in the first subset according to the high scanningresolution assigned to the first subset but scan only every fourth senseelectrode and drive electrode pair 121 in the second subset according tothe low scanning resolution assigned to the second subset.

The controller 160 can thus collect a greater density of resistance datafrom sense electrode and drive electrode pairs 121 proximal a mass nearor approaching the cover layer 141 than at other sense electrode anddrive electrode pairs 121 substantially remote from such externalmasses. Therefore, by collecting less total data per resistance scancycle, the controller 160 can process these data in less time andachieve a greater refresh rate (e.g., rate of touch images output perunit time) without (substantially) sacrificing resolution across regionsof the resistive touch sensor 120 at which inputs are most likely tooccur. Furthermore, once an input is detected on the cover layer 141based on resistance data collected during a resistance scan cycle, thecontroller 160 can continue to implement this method to selectivelyincrease or decrease scan resolutions in select regions of the resistivetouch sensor 120 based on capacitance values read from the shieldelectrode(s) 150 during neighboring capacitance scan periods.

The controller 160 can also implement methods and techniques similar tothose described above to adjust scan resolutions in select regions ofthe resistive touch sensor 120 proportional to a detected size of anobject approaching the cover layer 141. For example, the controller 160can increase the scan resolution in a particular region of the resistivetouch sensor 120 in response to detection of a relatively small objectapproaching an adjacent region of the cover layer 141; and vice versa.The controller 160 can thus match the scan resolutions of a region ofthe resistive touch sensor 120 to a size of an objet approaching thisregion of the resistive touch sensor 120 in order to limit a totalamount of resistance values collected during a scan cycle and to reducea processing time for these resistance data without (substantially)sacrificing detection and location of a point of contact between theobject and cover layer 141.

The controller 160 can implement similar methods and techniques toadjust scan resolutions in select regions of the resistive touch sensor120 proportional to a speed at which an object approaches the coverlayer 141. For example, the controller 160 can increase the scanresolution in a particular region of the resistive touch sensor 120 inresponse to detection of an object rapidly approaching an adjacentregion of the cover layer 141; and vice versa. The controller 160 canthus match the scan resolutions of a region of the resistive touchsensor 120 to a speed at which an object approaches this region of theresistive touch sensor 120.

However, the controller 160 can implement any other methods ortechniques to activate the resistive touch sensor 120, adjust a scanresolution of the resistive touch sensor 120, adjust sensitivity toinputs detected by the resistive touch sensor 120, etc. based oncapacitance values read from the shield electrode(s) 150 and/or based onobjects near the cover layer 141 detected based on these capacitancevalues.

13. Moisture Detection

In one variation, the controller 160 is further configured to detectmoisture on the cover layer 141 and to modify its operation accordingly.For example, in Block S140, the controller 160 can: read a capacitancevalue of a shield electrode during a capacitance scan period within asampling period; detect moisture on the cover layer 141 based on thecapacitance value; and then, in response to detecting moisture on thesurface, clear a touch image—generated during the sampling period—of anyrepresentation of forces applied to the surface and objects proximal thesurfaces.

In one implementation in which the system 100 includes an array ofshield electrodes over the force-sensing layer 130, the controller 160detects fluid flowing across the surface based on a rapid increase inleakage current, a rapid increase in charge time, and/or a rapiddecrease in discharge time across a large proportion of (e.g., all)shield electrodes over a short number of sampling periods. In anotherimplementation, the controller 160 detects multiple light, transientimpacts on the cover layer 141 over a sequence of sampling periods andthen implements pattern matching (or similar) techniques to characterizethese transient impacts as rain falling onto the cover layer 141. Inthis implementation, the controller 160 can also confirm presence ofwater on the cover layer 141 as a result of rainfall in response tochanges in capacitance values read from the shield electrode(s) 150 overthe same sampling periods. Once presence of such moisture is detected,the controller 160 can cease scanning the resistive touch sensor 120and/or the shield electrode(s) 150 and instead output empty touchimages. In another example, in response to detecting moisture on thesurface, the controller 160 can cease output of touch images andtransition into an inactive (or “sleep”) mode for a preset duration oftime. In this example, in response to detecting moisture on the surface,the controller 160 can also output a command to a connected computingdevice to similarly transition into an inactive state, such as for apreset duration of time and until such moisture is removed from thecover layer 141.

However, the controller 160 can implement any other method or techniqueto detect and respond to moisture on the cover layer 141 based onresistance and/or capacitance values collected during operation of thesystem 100.

14. Calibration

In one variation shown in FIG. 8 , the controller 160 calibrates acapacitive sensor model for the shield electrode(s) 150 based onresistance data collected from the resistive touch sensor 120 in BlockS150. For example, the controller 160 can calibrate the capacitivesensor model in Block S150 upon startup, when a new or different overlayis installed over the cover layer 141, or occasionally (once perthree-minute interval) during operation of the system 100.

In this variation, the controller 160 can: at a first time, correlate afirst change in a resistance across a sense electrode and driveelectrode pair 121 in the resistive touch sensor 120 with application ofa mass to a surface of the resistive touch sensor 120 (e.g., the coverlayer 141, an overlay installed over the cover layer 141); at a secondtime succeeding the first time, correlate a second change in theresistance across the sense electrode and drive electrode pair 121 withrelease of the mass from the surface of the resistive touch sensor 120;at approximately the second time, read a capacitance value at a shieldelectrode coincident the sense electrode and drive electrode pair 121;and correlate the capacitance value at the ground/sense electrode withproximity of the mass to the resistive touch sensor 120 but notcontacting the cover layer 141 (or the overlay). For example, thecontroller 160 can detect application of an overlay over the cover layer141 based on detection of an approximately uniform rise in applied forceacross all drive and sense electrode pairs 121 in the resistive touchsensor 120 within a threshold period of time, and the controller 160 canthen implement the foregoing method to recalibrate a baselinecapacitance value (“the capacitive sensor model”) for the shieldelectrode(s) 150.

Furthermore, in this variation, the controller 160 can: over a firstperiod of time between the first time and the second time, calculate arate of change in the resistance across the sense electrode and driveelectrode pair 121; estimate a rate of retraction of the mass from thesurface of the resistive touch sensor 120 based on the rate of change inthe resistance across the sense electrode and drive electrode pair 121;over a second period of time succeeding the second time, read a sequenceof capacitance values at the shield electrode 151 coincident the contactlocation; and correlate capacitance values in the sequence ofcapacitance values with estimated distances between the surface of thetouch resistive sensor and the mass based on the estimated rate ofretraction of the mass from the surface. The controller 160 cantherefore estimate a rate of departure of a mass from a surface over theresistive touch sensor 120 (e.g., from the cover layer 141, from anoverlay installed over the cover layer 141) based on a rate of change ofa magnitude of a force input detected by the resistive touch sensor 120,and the controller 160 can estimate the position of the mass above thelocation of the force input based on the estimated rate of departurefollowing release of the mass from the surface (e.g., based on return ofthe detected force magnitude at the location to a baseline forcemagnitude). The controller 160 can then map estimated positions of themass over time following its release from the surface to capacitancevalues read from a shield electrode—adjacent (i.e., below) the locationof the force input—at a corresponding time to generate acapacitance-value-based mass position model for the shield electrode.

In one example shown in FIG. 8 , during a first sampling period, thecontroller 160 can: collect resistance data from the resistive touchsensor 120 in Block S112; and then transform a first change inresistance between a particular sense electrode and drive electrode pair121 in the resistive touch sensor 120 into a first magnitude of a forceapplied to a first position (adjacent the particular sense electrode anddrive electrode pair) on the cover layer 141 in Block S120. During asecond sampling period succeeding the first sampling period, thecontroller 160 can: drive the set of shield electrodes 150 to thevirtual reference potential in Block Silo; read a second set ofresistance values across sense electrode and drive electrode pairs 121in Block S112; and transform a second change in resistance between theparticular sense electrode and drive electrode pair 121 into a secondmagnitude of the force applied to the cover layer 141 proximal the firstposition in Block S120. Furthermore, during a third sampling periodsucceeding the second sampling period, the controller 160 can: drive theset of shield electrodes 150 to the virtual reference potential in BlockSilo; read a third set of resistance values across sense electrode anddrive electrode pairs 121 in Block S112; detect removal of the forcefrom the cover layer 141 based on a third change in resistance, in theset of resistance values, between the particular sense electrode anddrive electrode pair 121 in Block S120; and then read a thirdcapacitance value of a shield electrode adjacent (e.g., under) the firstposition on the cover layer 141. The controller 160 can thus calculate aspeed of removal of the first object from the cover layer 141 based on adifference between the first magnitude and the second magnitude of theforce and based on a difference in time from the first sampling periodto the second sampling period. Once removal of an object on the coverlayer 141 over the first position is detected by the third samplingperiod, the controller 160 can also interpolate a particular distancebetween the cover layer 141 and the object at the third sampling periodbased on the speed of removal of the object from the cover layer 141 anda difference in time from the second sampling period to the thirdsampling period. Finally, the controller 160 can associate the thirdcapacitance value—read from the first shield electrode 151 adjacent thefirst position—with the particular distance, thereby calibrating thefirst shield electrode 151 for distances from objects near but not incontact with the cover layer 141. In this example, the controller 160can store this particular distance and the third capacitance value (or acapacitance change rate or a relative capacitance difference from apreceding sampling period to the third sampling period, etc.) in thecapacitance sensor model. The controller 160 can also: estimate a sizeof the object based on a force contact area at the first position duringa preceding sampling period (e.g., the first sampling period); predict atype of the object, as described above; and associate the estimated sizeof the object, the predicted type of the object, and/or the thirdcapacitance value with this particular distance in the capacitancesensor model in Block 150.

Alternatively, the controller 160 can store static capacitance sensormodels—such as including baseline capacitance values, baseline orthreshold capacitance change rates, and/or capacitance-value-based massposition models, etc.—for each shield electrode in the system 100.

15. Error Reduction

In one variation, during a resistance scan cycle, the controller 160 canread analog voltage values between an instrument LO voltage and aninstrument HI voltage at drive and sense electrode pairs 121 in theresistive touch sensor 120. In order to minimize errors due tocapacitive coupling between the shield electrode(s) 150 and theresistive touch sensor 120 during resistance scan cycles, the controller160 can: hold the shield electrode(s) 150 to the instrument LO voltage(e.g., a virtual reference potential) and scan the resistive touchsensor 120 during a first segment of the resistance scan cycle; pull theshield electrode(s) 150 up to the instrument HI voltage and scan theresistive touch sensor 120 during a second segment of the resistancescan cycle; and then average resistance values scanned from theresistive touch sensor 120 during the first and second segments of theresistance scan cycle before processing these resistance data during thesubsequent resistance processing cycle. Similarly, the controller 160can oscillate between pulling the shield electrode(s) 150 down to theinstrument LO voltage and up to the instrument HI voltage for succeedingresistance scan cycles and average resistance data from a current and alast resistance scan cycle in order to reject or reduce noise in theseresistance data due to capacitive coupling between the resistive touchsensor 120 and the shield electrode(s) 150.

The systems and methods described herein can be embodied and/orimplemented at least in part as a machine configured to receive acomputer-readable medium storing computer-readable instructions. Theinstructions can be executed by computer-executable componentsintegrated with the application, applet, host, server, network, website,communication service, communication interface,hardware/firmware/software elements of a user computer or mobile device,wristband, smartphone, or any suitable combination thereof. Othersystems and methods of the embodiment can be embodied and/or implementedat least in part as a machine configured to receive a computer-readablemedium storing computer-readable instructions. The instructions can beexecuted by computer-executable components integrated bycomputer-executable components integrated with apparatuses and networksof the type described above. The computer-readable medium can be storedon any suitable computer readable media such as RAMs, ROMs, flashmemory, EEPROMs, optical devices (CD or DVD), hard drives, floppydrives, or any suitable device. The computer-executable component can bea processor but any suitable dedicated hardware device can(alternatively or additionally) execute the instructions.

As a person skilled in the art will recognize from the previous detaileddescription and from the figures and claims, modifications and changescan be made to the embodiments of the invention without departing fromthe scope of this invention as defined in the following claims.

I claim:
 1. A system for detecting and characterizing touch inputscomprising: a substrate; an array of sense electrodes arranged on thesubstrate; a touch sensor arranged over the substrate; and a controllercoupled to the array of sense electrodes and the touch sensor andconfigured to: during a first scan period within a first samplingperiod, read a first set of force values from the array of senseelectrode pairs; during a second scan period within the first samplingperiod, read a first set of touch values from the touch sensor; andtransform the first set of force values and the first set of touchvalues into a touch image, the touch image representing locations andforce magnitudes of a set of inputs over the substrate.